Next | Prev | Up | Top | Contents | Index

Overview of ULI

In the past, PIO could only be synchronous: the program wrote to a device register, then polled the device until the operation was complete. With ULI, the program can manage a device that causes interrupts on the VME bus. You set up a handler function within your program. The handler is called whenever the device causes an interrupt.

In IRIX 6.2, user-level interrupts are supported for VME-bus devices, and for external interrupts on the Challenge and Onyx systems.

When using ULI with a VME device, you use VME PIO to initiate device actions and to transfer data to and from device registers (see "VME Programmed I/O"). When using ULI to trap external interrupts, you enable the interrupts with ioctl() calls to the external interrupt handler (see Chapter 6, "Control of External Interrupts").


The User Level Interrupt Handler
Restrictions on the ULI Handler
Planning for Concurrency
Using Multiple Devices

Next | Prev | Up | Top | Contents | Index